function AJAXForbindelse(url){
	this._url = url;
};
AJAXForbindelse.prototype._onsuccess = function() {window.alert("Suksess");};
AJAXForbindelse.prototype._onerror = function() {window.alert("Feil");};
AJAXForbindelse.prototype.setSuccessHandler = function(metode) {
	this._onsuccess = metode;
};
AJAXForbindelse.prototype.setErrorHandler = function(metode) {
	this._onerror = metode;
};
AJAXForbindelse.prototype._getHTTPObjekt = function() {
	if (typeof window.XMLHttpRequest != "undefined") { // Firefox, Opera, Safari, etc
		return new XMLHttpRequest();
	}

	if (typeof window.ActiveXObject == "function") { // IE5 og IE6
		try {
			return new ActiveXObject("Msxml2.XMLHTTP");
		} catch (e) {
			try {
				return new ActiveXObject("Microsoft.XMLHTTP");
			} catch (e) {}
		}
	}
	return false;
};
AJAXForbindelse.prototype._dataReceived = function(httprequest) {
	try {
		if (httprequest.readyState != 4) return; // Dokumentet er ikke ferdig lastet

		if (httprequest.status == 200) { // Henting OK
			this._onsuccess(httprequest);
		} else {
			this._onerror(httprequest);
		}

	} catch(e) {
		window.alert(e);
	}
};
AJAXForbindelse.prototype.get = function(data) {
	try {
		var httprequest = this._getHTTPObjekt();

		// Legger til evt. GET-parametre.
		var url = this._url;
		if (data) url += "?" + data;

		httprequest.open('GET', url, true);

		// Trenger å få gitt httprequest til hendelseshåndterer
		var thisObjekt = this;
		httprequest.onreadystatechange = function(){thisObjekt._dataReceived(httprequest);};
		httprequest.onerror = function(){thisObjekt._onerror(httprequest);};

		// Sender forespørsel
		httprequest.send(null);
	} catch(e) {
		window.alert(e);
	}
};
AJAXForbindelse.prototype.post = function(data) {
	try {
		var httprequest = this._getHTTPObjekt();
		httprequest.open('POST', this._url, true);

		// Trenger å få gitt httprequest til hendelseshåndterer
		var thisObjekt = this;
		httprequest.onreadystatechange = function(){thisObjekt._dataReceived(httprequest);};
		httprequest.onerror = function(){thisObjekt._onerror(httprequest);};

		// Må ved POST angi mime-type for form-data
		httprequest.setRequestHeader("Content-Type","application/x-www-form-urlencoded; charset='UTF-8'");

		// Sender forespørsel
		httprequest.send(data);
	} catch(e) {
		window.alert(e);
	}
};